
#include "register/tilingdata_base.h"

namespace optiling {
BEGIN_TILING_DATA_DEF(ReduceLogSumExpTilingData)
  // TILING_DATA_FIELD_DEF(uint32_t, size);
  // TILING_DATA_FIELD_DEF_ARR(int32_t, 4, x_ndarray);
  // TILING_DATA_FIELD_DEF(int32_t, x_dimensional);
  // TILING_DATA_FIELD_DEF(bool, keep);
  // TILING_DATA_FIELD_DEF(int32_t, tileDataMaxNum);

  TILING_DATA_FIELD_DEF(int32_t, coreLength);         //totalLengthAligned 对齐后的总长度
  TILING_DATA_FIELD_DEF(int32_t, groupLength);        //每一组的长度，也就是去掉外层的长度
  TILING_DATA_FIELD_DEF(int32_t, groupNum);           //组的个数
  TILING_DATA_FIELD_DEF(int32_t, xiLength);           //内层的长度  
  TILING_DATA_FIELD_DEF(int32_t, xiLengthAligned);    //内层对齐后的长度 
  TILING_DATA_FIELD_DEF(int32_t, xiNum);              //消除的维度
  TILING_DATA_FIELD_DEF(int32_t, tileNum);            //分块个数
  TILING_DATA_FIELD_DEF(int32_t, tileLength);         //每一块的长度
  TILING_DATA_FIELD_DEF(int32_t, lastTileLength);     //最后一块的长度
END_TILING_DATA_DEF;

REGISTER_TILING_DATA_CLASS(ReduceLogSumExp, ReduceLogSumExpTilingData)
}
